/**
 * @file overview.js
 * @description 数据概览相关API接口
 * @created 2024-07-12
 */

import request from '@/utils/request'

/**
 * 获取数据概览卡片数据
 * @param {Object} params - 查询参数
 * @param {String} params.timeRange - 时间范围：week/month/semester/year
 * @returns {Promise} 返回概览卡片数据
 */
export function getOverviewCards(params) {
  return request({
    url: '/api/admin/dashboard/overview-cards',
    method: 'get',
    params
  }).catch(error => {
    console.error('获取概览卡片数据错误:', error)
    // 返回默认数据以防接口错误
    return {
      status: 'success',
      message: '获取概览卡片数据成功(默认数据)',
      data: [
        {
          id: 1,
          title: '教学资源利用率',
          value: '78.5%',
          change: 5.2,
          trend: 'up',
          icon: '📚',
          color: '#1890ff'
        },
        {
          id: 2,
          title: '平均教学质量评分',
          value: '4.6/5',
          change: 0.3,
          trend: 'up',
          icon: '⭐',
          color: '#52c41a'
        },
        {
          id: 3,
          title: '学生参与度',
          value: '82%',
          change: 3.7,
          trend: 'up',
          icon: '👥',
          color: '#722ed1'
        },
        {
          id: 4,
          title: '教学资源缺口',
          value: '8%',
          change: 2.1,
          trend: 'down',
          icon: '📊',
          color: '#faad14'
        }
      ]
    }
  })
}

/**
 * 获取教学资源利用率趋势数据
 * @param {Object} params - 查询参数
 * @param {String} params.timeRange - 时间范围：week/month/semester/year
 * @returns {Promise} 返回趋势数据
 */
export function getResourceUtilizationTrend(params) {
  return request({
    url: '/api/admin/dashboard/resource-utilization-trend',
    method: 'get',
    params
  })
}

/**
 * 获取教学质量评分趋势数据
 * @param {Object} params - 查询参数
 * @param {String} params.timeRange - 时间范围：week/month/semester/year
 * @returns {Promise} 返回趋势数据
 */
export function getTeachingQualityTrend(params) {
  return request({
    url: '/api/admin/dashboard/teaching-quality-trend',
    method: 'get',
    params
  })
}

/**
 * 获取学生参与度趋势数据
 * @param {Object} params - 查询参数
 * @param {String} params.timeRange - 时间范围：week/month/semester/year
 * @returns {Promise} 返回趋势数据
 */
export function getStudentParticipationTrend(params) {
  return request({
    url: '/api/admin/dashboard/student-participation-trend',
    method: 'get',
    params
  })
}

/**
 * 获取教学资源缺口趋势数据
 * @param {Object} params - 查询参数
 * @param {String} params.timeRange - 时间范围：week/month/semester/year
 * @returns {Promise} 返回趋势数据
 */
export function getResourceGapTrend(params) {
  return request({
    url: '/api/admin/dashboard/resource-gap-trend',
    method: 'get',
    params
  })
} 